package be.jprojects.subscription.logic;

import java.util.ArrayList;
import java.util.List;

import be.jprojects.subscription.logic.interfaces.ICity;
import be.jprojects.subscription.logic.interfaces.IPostalCode;
import be.jprojects.subscription.logic.interfaces.IProvince;
import be.jprojects.subscription.logic.interfaces.IStreet;

public class City implements ICity {
	private IProvince province;
	private String id, name;
	private List<IPostalCode> postalCodes;
	private List<IStreet> streets;
	private boolean fullyLoaded;
	
	
	public City() {
		streets = new ArrayList<IStreet>();
		postalCodes = new ArrayList<IPostalCode>();
	}
	public List<IStreet> getStreets() {
		return streets;
	}
	public void setStreets(List<IStreet> streets) {
		this.streets = streets;
	}
	public boolean isFullyLoaded() {
		return fullyLoaded;
	}
	public void setFullyLoaded(boolean fullyLoaded) {
		this.fullyLoaded = fullyLoaded;
	}

	/* (non-Javadoc)
	 * @see be.jprojects.subscription.logic.ICity#getProvince()
	 */
	public IProvince getProvince() {
		return province;
	}
	/* (non-Javadoc)
	 * @see be.jprojects.subscription.logic.ICity#setProvince(be.jprojects.subscription.logic.interfaces.IProvince)
	 */
	public void setProvince(IProvince province) {
		this.province = province;
	}
	/* (non-Javadoc)
	 * @see be.jprojects.subscription.logic.ICity#getId()
	 */
	public String getId() {
		return id;
	}
	/* (non-Javadoc)
	 * @see be.jprojects.subscription.logic.ICity#setId(java.lang.String)
	 */
	public void setId(String id) {
		this.id = id;
	}
	/* (non-Javadoc)
	 * @see be.jprojects.subscription.logic.ICity#getPostalCode()
	 */
	public List<IPostalCode> getPostalCodes() {
		return postalCodes;
	}
	/* (non-Javadoc)
	 * @see be.jprojects.subscription.logic.ICity#getName()
	 */
	public String getName() {
		return name;
	}
	/* (non-Javadoc)
	 * @see be.jprojects.subscription.logic.ICity#setName(java.lang.String)
	 */
	public void setName(String name) {
		this.name = name;
	}
	
	public String toString() {
		return name + ", "  + postalCodes;
	}
	
	
}
